package com.ruoyi.merchant.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 商家详情VO
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class MerchantDetailVO {

    /** 商家ID */
    private Long merchantId;

    /** 用户ID */
    private Long userId;

    /** 商家名称 */
    private String merchantName;

    /** 联系人 */
    private String contactPerson;

    /** 联系电话（脱敏） */
    private String contactPhone;

    /** 完整联系电话（内部使用，可选） */
    private String fullContactPhone;

    /** 商家头像 */
    private String avatarUrl;

    /** 商家地址 */
    private String address;

    /** 纬度 */
    private BigDecimal latitude;

    /** 经度 */
    private BigDecimal longitude;

    /** 营业执照号 */
    private String businessLicense;

    /** 营业执照照片 */
    private String businessLicenseImage;

    /** 食品经营许可证号 */
    private String foodLicense;

    /** 食品许可证照片 */
    private String foodLicenseImage;

    /** 营业状态：0-营业，1-休息，2-封禁 */
    private Integer status;

    /** 营业状态文本 */
    private String statusText;

    /** 审核状态：PENDING_INFO/UNDER_REVIEW/APPROVED/REJECTED */
    private String auditStatus;

    /** 审核状态文本 */
    private String auditStatusText;

    /** 审核拒绝原因（如果被拒绝） */
    private String rejectReason;

    /** 综合评分 */
    private BigDecimal rating;

    /** 信息是否完善 */
    private Boolean isInfoComplete;

    /** 是否可以营业 */
    private Boolean canOperate;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createdAt;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatedAt;
}
